const express = require('express');
const axios = require('axios');
const cors = require('cors'); // 引入 cors 中间件
const app = express();
const port = 3000;
const SILICONFLOW_API_KEY = ''//改成自己的硅基流动的token
app.use(express.json());
app.use(cors()); // 使用 cors 中间件

app.post('/chat', async (req, res) => {
    const { message } = req.body;
    
    // 输入验证（新增）
    if (!message) {
        return res.status(400).json({ error: '缺少 message 参数' });
    }

    try {
        const response = await axios.post('https://api.siliconflow.cn/v1/chat/completions', {
            model: 'deepseek-ai/DeepSeek-R1', // 替换为硅基流动支持的模型
            messages: [
                { role: 'user', content: message } 
            ]
        }, {
            headers: {
                'Content-Type': 'application/json',
                'Authorization': `Bearer ${SILICONFLOW_API_KEY}`
            }
        });

        res.json({ answer: response.data.choices[0].message.content });
    } catch (error) {
        console.error('硅基流动 API 错误:', error.response?.data || error.message);
        if (error.response) {
            res.status(error.response.status).json(error.response.data); // 返回详细错误信息
        } else {
            res.status(500).json({ error: '服务器内部错误' });
        }
    }
});

app.listen(port, () => {
    console.log(`服务器运行在 http://localhost:${port}`);
});